MRI R1, 1 ; R1 ist immer 1
MRI R2, _stack ; R2 zeigt auf Stapel
MRI R4, _heap ; R4 zeigt auf die nächste freie Stelle auf dem Heap
; NEW Main
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Main
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 4
ADD R4, R5 ; Heap weiter zählen
MRI R5, _init_1
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von main
MRI R0, Main_main
_init_1:
MRI R0, _end ; Programm beenden
; CLASS Main
Main:
DAT 1, Main_b
DAT 1, Main_main
; METHOD b
Main_b:
ADD R2, R1
MMR (R2), R3 ; Alten Stapelrahmen sichern
MRR R3, R2 ; Aktuelle Stapelposition ist neuer Rahmen
; IF
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_b_4:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_b_3 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_b_5
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_b_5:
JPC R5, Main_b_3 ; Sprung zu END IF
; END IF
Main_b_3:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut a
MRM R5, (R2)
MRI R6, 3
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_b_2:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_b_1 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_b_6
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_b_6:
JPC R5, Main_b_1 ; Sprung zu END IF
; END IF
Main_b_1:
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_b_8:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_b_7 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_b_9
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_b_9:
JPC R5, Main_b_7 ; Sprung zu END IF
; END IF
Main_b_7:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut a
MRM R5, (R2)
MRI R6, 3
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; UNBOX
MRM R5, (R2) ; Objektreferenz vom Stapel lesen
MRI R6, 1
ADD R5, R6 ; Adresse des Werts bestimmen
MRM R5, (R5) ; Wert auslesen
MMR (R2), R5 ; und auf den Stapel schreiben
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; END METHOD b
MRI R5, 3
SUB R2, R5 ; Stack korrigieren
SUB R3, R1
MRM R5, (R3) ; Rücksprungadresse holen
ADD R3, R1
MRM R3, (R3) ; Alten Stapelrahmen holen
MRR R0, R5 ; Rücksprung
; METHOD main
Main_main:
ADD R2, R1
MMR (R2), R3 ; Alten Stapelrahmen sichern
MRR R3, R2 ; Aktuelle Stapelposition ist neuer Rahmen
MRI R5, 2
ADD R2, R5 ; Platz für lokale Variablen schaffen
; Referenz auf Variable a
MRI R5, 1
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 65 : _Integer
MRI R5, 65
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_2:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_1 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_3
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_3:
JPC R5, Main_main_1 ; Sprung zu END IF
; END IF
Main_main_1:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_5:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_4 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_6
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_6:
JPC R5, Main_main_4 ; Sprung zu END IF
; END IF
Main_main_4:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut a
MRM R5, (R2)
MRI R6, 3
ADD R5, R6
MMR (R2), R5
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 66 : _Integer
MRI R5, 66
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; IF
; Referenz auf Variable a
MRI R5, 1
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_8:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_7 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_9
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_9:
JPC R5, Main_main_7 ; Sprung zu END IF
; END IF
Main_main_7:
; Referenz auf Variable a
MRI R5, 1
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; UNBOX
MRM R5, (R2) ; Objektreferenz vom Stapel lesen
MRI R6, 1
ADD R5, R6 ; Adresse des Werts bestimmen
MRM R5, (R5) ; Wert auslesen
MMR (R2), R5 ; und auf den Stapel schreiben
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; CALL
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_11:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_10 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_12
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_12:
JPC R5, Main_main_10 ; Sprung zu END IF
; END IF
Main_main_10:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
MRI R5, Main_main_13
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von b
MRI R0, Main_b
Main_main_13:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_15:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_14 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_16
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_16:
JPC R5, Main_main_14 ; Sprung zu END IF
; END IF
Main_main_14:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut a
MRM R5, (R2)
MRI R6, 3
ADD R5, R6
MMR (R2), R5
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 67 : _Integer
MRI R5, 67
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; CALL
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_18:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_17 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_19
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_19:
JPC R5, Main_main_17 ; Sprung zu END IF
; END IF
Main_main_17:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
MRI R5, Main_main_20
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von b
MRI R0, Main_b
Main_main_20:
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_22:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_21 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_23
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_23:
JPC R5, Main_main_21 ; Sprung zu END IF
; END IF
Main_main_21:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_25:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_24 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_26
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_26:
JPC R5, Main_main_24 ; Sprung zu END IF
; END IF
Main_main_24:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_32:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_31 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_33
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_33:
JPC R5, Main_main_31 ; Sprung zu END IF
; END IF
Main_main_31:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_30:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_29 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_34
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_34:
JPC R5, Main_main_29 ; Sprung zu END IF
; END IF
Main_main_29:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_36:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_35 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_37
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_37:
JPC R5, Main_main_35 ; Sprung zu END IF
; END IF
Main_main_35:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_28:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_27 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_38
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_38:
JPC R5, Main_main_27 ; Sprung zu END IF
; END IF
Main_main_27:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_42:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_41 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_43
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_43:
JPC R5, Main_main_41 ; Sprung zu END IF
; END IF
Main_main_41:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_40:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_39 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_44
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_44:
JPC R5, Main_main_39 ; Sprung zu END IF
; END IF
Main_main_39:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_46:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_45 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_47
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_47:
JPC R5, Main_main_45 ; Sprung zu END IF
; END IF
Main_main_45:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut a
MRM R5, (R2)
MRI R6, 3
ADD R5, R6
MMR (R2), R5
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 68 : _Integer
MRI R5, 68
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; CALL
; IF
; IF
; IF
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_63:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_62 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_64
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_64:
JPC R5, Main_main_62 ; Sprung zu END IF
; END IF
Main_main_62:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_61:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_60 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_65
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_65:
JPC R5, Main_main_60 ; Sprung zu END IF
; END IF
Main_main_60:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_67:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_66 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_68
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_68:
JPC R5, Main_main_66 ; Sprung zu END IF
; END IF
Main_main_66:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_59:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_58 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_69
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_69:
JPC R5, Main_main_58 ; Sprung zu END IF
; END IF
Main_main_58:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_73:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_72 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_74
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_74:
JPC R5, Main_main_72 ; Sprung zu END IF
; END IF
Main_main_72:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_71:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_70 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_75
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_75:
JPC R5, Main_main_70 ; Sprung zu END IF
; END IF
Main_main_70:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_77:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_76 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_78
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_78:
JPC R5, Main_main_76 ; Sprung zu END IF
; END IF
Main_main_76:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_57:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_56 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_79
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_79:
JPC R5, Main_main_56 ; Sprung zu END IF
; END IF
Main_main_56:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_85:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_84 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_86
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_86:
JPC R5, Main_main_84 ; Sprung zu END IF
; END IF
Main_main_84:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_83:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_82 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_87
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_87:
JPC R5, Main_main_82 ; Sprung zu END IF
; END IF
Main_main_82:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_89:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_88 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_90
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_90:
JPC R5, Main_main_88 ; Sprung zu END IF
; END IF
Main_main_88:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_81:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_80 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_91
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_91:
JPC R5, Main_main_80 ; Sprung zu END IF
; END IF
Main_main_80:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_95:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_94 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_96
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_96:
JPC R5, Main_main_94 ; Sprung zu END IF
; END IF
Main_main_94:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_93:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_92 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_97
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_97:
JPC R5, Main_main_92 ; Sprung zu END IF
; END IF
Main_main_92:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_99:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_98 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_100
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_100:
JPC R5, Main_main_98 ; Sprung zu END IF
; END IF
Main_main_98:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_55:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_54 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_101
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_101:
JPC R5, Main_main_54 ; Sprung zu END IF
; END IF
Main_main_54:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_109:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_108 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_110
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_110:
JPC R5, Main_main_108 ; Sprung zu END IF
; END IF
Main_main_108:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_107:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_106 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_111
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_111:
JPC R5, Main_main_106 ; Sprung zu END IF
; END IF
Main_main_106:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_113:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_112 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_114
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_114:
JPC R5, Main_main_112 ; Sprung zu END IF
; END IF
Main_main_112:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_105:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_104 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_115
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_115:
JPC R5, Main_main_104 ; Sprung zu END IF
; END IF
Main_main_104:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_119:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_118 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_120
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_120:
JPC R5, Main_main_118 ; Sprung zu END IF
; END IF
Main_main_118:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_117:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_116 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_121
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_121:
JPC R5, Main_main_116 ; Sprung zu END IF
; END IF
Main_main_116:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_123:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_122 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_124
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_124:
JPC R5, Main_main_122 ; Sprung zu END IF
; END IF
Main_main_122:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_103:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_102 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_125
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_125:
JPC R5, Main_main_102 ; Sprung zu END IF
; END IF
Main_main_102:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_131:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_130 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_132
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_132:
JPC R5, Main_main_130 ; Sprung zu END IF
; END IF
Main_main_130:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_129:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_128 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_133
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_133:
JPC R5, Main_main_128 ; Sprung zu END IF
; END IF
Main_main_128:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_135:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_134 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_136
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_136:
JPC R5, Main_main_134 ; Sprung zu END IF
; END IF
Main_main_134:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_127:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_126 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_137
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_137:
JPC R5, Main_main_126 ; Sprung zu END IF
; END IF
Main_main_126:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_141:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_140 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_142
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_142:
JPC R5, Main_main_140 ; Sprung zu END IF
; END IF
Main_main_140:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_139:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_138 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_143
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_143:
JPC R5, Main_main_138 ; Sprung zu END IF
; END IF
Main_main_138:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_145:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_144 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_146
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_146:
JPC R5, Main_main_144 ; Sprung zu END IF
; END IF
Main_main_144:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_53:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_52 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_147
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_147:
JPC R5, Main_main_52 ; Sprung zu END IF
; END IF
Main_main_52:
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_157:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_156 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_158
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_158:
JPC R5, Main_main_156 ; Sprung zu END IF
; END IF
Main_main_156:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_155:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_154 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_159
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_159:
JPC R5, Main_main_154 ; Sprung zu END IF
; END IF
Main_main_154:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_161:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_160 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_162
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_162:
JPC R5, Main_main_160 ; Sprung zu END IF
; END IF
Main_main_160:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_153:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_152 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_163
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_163:
JPC R5, Main_main_152 ; Sprung zu END IF
; END IF
Main_main_152:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_167:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_166 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_168
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_168:
JPC R5, Main_main_166 ; Sprung zu END IF
; END IF
Main_main_166:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_165:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_164 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_169
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_169:
JPC R5, Main_main_164 ; Sprung zu END IF
; END IF
Main_main_164:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_171:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_170 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_172
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_172:
JPC R5, Main_main_170 ; Sprung zu END IF
; END IF
Main_main_170:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_151:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_150 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_173
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_173:
JPC R5, Main_main_150 ; Sprung zu END IF
; END IF
Main_main_150:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_179:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_178 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_180
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_180:
JPC R5, Main_main_178 ; Sprung zu END IF
; END IF
Main_main_178:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_177:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_176 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_181
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_181:
JPC R5, Main_main_176 ; Sprung zu END IF
; END IF
Main_main_176:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_183:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_182 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_184
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_184:
JPC R5, Main_main_182 ; Sprung zu END IF
; END IF
Main_main_182:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_175:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_174 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_185
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_185:
JPC R5, Main_main_174 ; Sprung zu END IF
; END IF
Main_main_174:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_189:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_188 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_190
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_190:
JPC R5, Main_main_188 ; Sprung zu END IF
; END IF
Main_main_188:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_187:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_186 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_191
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_191:
JPC R5, Main_main_186 ; Sprung zu END IF
; END IF
Main_main_186:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_193:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_192 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_194
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_194:
JPC R5, Main_main_192 ; Sprung zu END IF
; END IF
Main_main_192:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_149:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_148 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_195
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_195:
JPC R5, Main_main_148 ; Sprung zu END IF
; END IF
Main_main_148:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_203:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_202 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_204
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_204:
JPC R5, Main_main_202 ; Sprung zu END IF
; END IF
Main_main_202:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_201:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_200 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_205
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_205:
JPC R5, Main_main_200 ; Sprung zu END IF
; END IF
Main_main_200:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_207:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_206 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_208
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_208:
JPC R5, Main_main_206 ; Sprung zu END IF
; END IF
Main_main_206:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_199:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_198 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_209
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_209:
JPC R5, Main_main_198 ; Sprung zu END IF
; END IF
Main_main_198:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_213:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_212 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_214
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_214:
JPC R5, Main_main_212 ; Sprung zu END IF
; END IF
Main_main_212:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_211:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_210 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_215
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_215:
JPC R5, Main_main_210 ; Sprung zu END IF
; END IF
Main_main_210:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_217:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_216 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_218
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_218:
JPC R5, Main_main_216 ; Sprung zu END IF
; END IF
Main_main_216:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_197:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_196 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_219
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_219:
JPC R5, Main_main_196 ; Sprung zu END IF
; END IF
Main_main_196:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_225:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_224 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_226
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_226:
JPC R5, Main_main_224 ; Sprung zu END IF
; END IF
Main_main_224:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_223:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_222 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_227
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_227:
JPC R5, Main_main_222 ; Sprung zu END IF
; END IF
Main_main_222:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_229:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_228 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_230
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_230:
JPC R5, Main_main_228 ; Sprung zu END IF
; END IF
Main_main_228:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_221:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_220 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_231
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_231:
JPC R5, Main_main_220 ; Sprung zu END IF
; END IF
Main_main_220:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_235:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_234 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_236
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_236:
JPC R5, Main_main_234 ; Sprung zu END IF
; END IF
Main_main_234:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_233:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_232 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_237
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_237:
JPC R5, Main_main_232 ; Sprung zu END IF
; END IF
Main_main_232:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_239:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_238 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_240
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_240:
JPC R5, Main_main_238 ; Sprung zu END IF
; END IF
Main_main_238:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_51:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_50 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_241
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_241:
JPC R5, Main_main_50 ; Sprung zu END IF
; END IF
Main_main_50:
; IF
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_253:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_252 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_254
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_254:
JPC R5, Main_main_252 ; Sprung zu END IF
; END IF
Main_main_252:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_251:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_250 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_255
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_255:
JPC R5, Main_main_250 ; Sprung zu END IF
; END IF
Main_main_250:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_257:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_256 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_258
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_258:
JPC R5, Main_main_256 ; Sprung zu END IF
; END IF
Main_main_256:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_249:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_248 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_259
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_259:
JPC R5, Main_main_248 ; Sprung zu END IF
; END IF
Main_main_248:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_263:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_262 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_264
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_264:
JPC R5, Main_main_262 ; Sprung zu END IF
; END IF
Main_main_262:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_261:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_260 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_265
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_265:
JPC R5, Main_main_260 ; Sprung zu END IF
; END IF
Main_main_260:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_267:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_266 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_268
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_268:
JPC R5, Main_main_266 ; Sprung zu END IF
; END IF
Main_main_266:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_247:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_246 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_269
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_269:
JPC R5, Main_main_246 ; Sprung zu END IF
; END IF
Main_main_246:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_275:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_274 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_276
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_276:
JPC R5, Main_main_274 ; Sprung zu END IF
; END IF
Main_main_274:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_273:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_272 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_277
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_277:
JPC R5, Main_main_272 ; Sprung zu END IF
; END IF
Main_main_272:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_279:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_278 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_280
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_280:
JPC R5, Main_main_278 ; Sprung zu END IF
; END IF
Main_main_278:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_271:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_270 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_281
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_281:
JPC R5, Main_main_270 ; Sprung zu END IF
; END IF
Main_main_270:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_285:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_284 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_286
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_286:
JPC R5, Main_main_284 ; Sprung zu END IF
; END IF
Main_main_284:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_283:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_282 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_287
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_287:
JPC R5, Main_main_282 ; Sprung zu END IF
; END IF
Main_main_282:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_289:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_288 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_290
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_290:
JPC R5, Main_main_288 ; Sprung zu END IF
; END IF
Main_main_288:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_245:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_244 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_291
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_291:
JPC R5, Main_main_244 ; Sprung zu END IF
; END IF
Main_main_244:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_299:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_298 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_300
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_300:
JPC R5, Main_main_298 ; Sprung zu END IF
; END IF
Main_main_298:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_297:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_296 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_301
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_301:
JPC R5, Main_main_296 ; Sprung zu END IF
; END IF
Main_main_296:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_303:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_302 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_304
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_304:
JPC R5, Main_main_302 ; Sprung zu END IF
; END IF
Main_main_302:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_295:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_294 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_305
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_305:
JPC R5, Main_main_294 ; Sprung zu END IF
; END IF
Main_main_294:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_309:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_308 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_310
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_310:
JPC R5, Main_main_308 ; Sprung zu END IF
; END IF
Main_main_308:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_307:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_306 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_311
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_311:
JPC R5, Main_main_306 ; Sprung zu END IF
; END IF
Main_main_306:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_313:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_312 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_314
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_314:
JPC R5, Main_main_312 ; Sprung zu END IF
; END IF
Main_main_312:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_293:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_292 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_315
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_315:
JPC R5, Main_main_292 ; Sprung zu END IF
; END IF
Main_main_292:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_321:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_320 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_322
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_322:
JPC R5, Main_main_320 ; Sprung zu END IF
; END IF
Main_main_320:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_319:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_318 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_323
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_323:
JPC R5, Main_main_318 ; Sprung zu END IF
; END IF
Main_main_318:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_325:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_324 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_326
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_326:
JPC R5, Main_main_324 ; Sprung zu END IF
; END IF
Main_main_324:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_317:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_316 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_327
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_327:
JPC R5, Main_main_316 ; Sprung zu END IF
; END IF
Main_main_316:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_331:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_330 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_332
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_332:
JPC R5, Main_main_330 ; Sprung zu END IF
; END IF
Main_main_330:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_329:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_328 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_333
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_333:
JPC R5, Main_main_328 ; Sprung zu END IF
; END IF
Main_main_328:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_335:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_334 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_336
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_336:
JPC R5, Main_main_334 ; Sprung zu END IF
; END IF
Main_main_334:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_243:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_242 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_337
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_337:
JPC R5, Main_main_242 ; Sprung zu END IF
; END IF
Main_main_242:
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_347:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_346 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_348
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_348:
JPC R5, Main_main_346 ; Sprung zu END IF
; END IF
Main_main_346:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_345:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_344 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_349
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_349:
JPC R5, Main_main_344 ; Sprung zu END IF
; END IF
Main_main_344:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_351:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_350 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_352
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_352:
JPC R5, Main_main_350 ; Sprung zu END IF
; END IF
Main_main_350:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_343:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_342 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_353
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_353:
JPC R5, Main_main_342 ; Sprung zu END IF
; END IF
Main_main_342:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_357:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_356 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_358
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_358:
JPC R5, Main_main_356 ; Sprung zu END IF
; END IF
Main_main_356:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_355:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_354 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_359
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_359:
JPC R5, Main_main_354 ; Sprung zu END IF
; END IF
Main_main_354:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_361:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_360 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_362
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_362:
JPC R5, Main_main_360 ; Sprung zu END IF
; END IF
Main_main_360:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_341:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_340 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_363
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_363:
JPC R5, Main_main_340 ; Sprung zu END IF
; END IF
Main_main_340:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_369:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_368 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_370
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_370:
JPC R5, Main_main_368 ; Sprung zu END IF
; END IF
Main_main_368:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_367:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_366 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_371
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_371:
JPC R5, Main_main_366 ; Sprung zu END IF
; END IF
Main_main_366:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_373:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_372 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_374
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_374:
JPC R5, Main_main_372 ; Sprung zu END IF
; END IF
Main_main_372:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_365:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_364 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_375
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_375:
JPC R5, Main_main_364 ; Sprung zu END IF
; END IF
Main_main_364:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_379:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_378 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_380
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_380:
JPC R5, Main_main_378 ; Sprung zu END IF
; END IF
Main_main_378:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_377:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_376 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_381
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_381:
JPC R5, Main_main_376 ; Sprung zu END IF
; END IF
Main_main_376:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_383:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_382 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_384
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_384:
JPC R5, Main_main_382 ; Sprung zu END IF
; END IF
Main_main_382:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_339:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_338 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_385
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_385:
JPC R5, Main_main_338 ; Sprung zu END IF
; END IF
Main_main_338:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_393:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_392 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_394
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_394:
JPC R5, Main_main_392 ; Sprung zu END IF
; END IF
Main_main_392:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_391:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_390 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_395
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_395:
JPC R5, Main_main_390 ; Sprung zu END IF
; END IF
Main_main_390:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_397:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_396 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_398
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_398:
JPC R5, Main_main_396 ; Sprung zu END IF
; END IF
Main_main_396:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_389:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_388 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_399
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_399:
JPC R5, Main_main_388 ; Sprung zu END IF
; END IF
Main_main_388:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_403:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_402 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_404
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_404:
JPC R5, Main_main_402 ; Sprung zu END IF
; END IF
Main_main_402:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_401:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_400 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_405
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_405:
JPC R5, Main_main_400 ; Sprung zu END IF
; END IF
Main_main_400:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_407:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_406 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_408
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_408:
JPC R5, Main_main_406 ; Sprung zu END IF
; END IF
Main_main_406:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_387:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_386 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_409
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_409:
JPC R5, Main_main_386 ; Sprung zu END IF
; END IF
Main_main_386:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_415:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_414 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_416
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_416:
JPC R5, Main_main_414 ; Sprung zu END IF
; END IF
Main_main_414:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_413:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_412 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_417
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_417:
JPC R5, Main_main_412 ; Sprung zu END IF
; END IF
Main_main_412:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_419:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_418 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_420
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_420:
JPC R5, Main_main_418 ; Sprung zu END IF
; END IF
Main_main_418:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_411:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_410 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_421
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_421:
JPC R5, Main_main_410 ; Sprung zu END IF
; END IF
Main_main_410:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_425:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_424 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_426
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_426:
JPC R5, Main_main_424 ; Sprung zu END IF
; END IF
Main_main_424:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_423:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_422 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_427
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_427:
JPC R5, Main_main_422 ; Sprung zu END IF
; END IF
Main_main_422:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_429:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_428 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_430
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_430:
JPC R5, Main_main_428 ; Sprung zu END IF
; END IF
Main_main_428:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_49:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_48 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_431
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_431:
JPC R5, Main_main_48 ; Sprung zu END IF
; END IF
Main_main_48:
; IF
; IF
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_445:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_444 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_446
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_446:
JPC R5, Main_main_444 ; Sprung zu END IF
; END IF
Main_main_444:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_443:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_442 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_447
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_447:
JPC R5, Main_main_442 ; Sprung zu END IF
; END IF
Main_main_442:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_449:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_448 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_450
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_450:
JPC R5, Main_main_448 ; Sprung zu END IF
; END IF
Main_main_448:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_441:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_440 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_451
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_451:
JPC R5, Main_main_440 ; Sprung zu END IF
; END IF
Main_main_440:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_455:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_454 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_456
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_456:
JPC R5, Main_main_454 ; Sprung zu END IF
; END IF
Main_main_454:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_453:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_452 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_457
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_457:
JPC R5, Main_main_452 ; Sprung zu END IF
; END IF
Main_main_452:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_459:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_458 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_460
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_460:
JPC R5, Main_main_458 ; Sprung zu END IF
; END IF
Main_main_458:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_439:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_438 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_461
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_461:
JPC R5, Main_main_438 ; Sprung zu END IF
; END IF
Main_main_438:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_467:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_466 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_468
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_468:
JPC R5, Main_main_466 ; Sprung zu END IF
; END IF
Main_main_466:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_465:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_464 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_469
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_469:
JPC R5, Main_main_464 ; Sprung zu END IF
; END IF
Main_main_464:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_471:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_470 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_472
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_472:
JPC R5, Main_main_470 ; Sprung zu END IF
; END IF
Main_main_470:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_463:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_462 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_473
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_473:
JPC R5, Main_main_462 ; Sprung zu END IF
; END IF
Main_main_462:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_477:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_476 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_478
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_478:
JPC R5, Main_main_476 ; Sprung zu END IF
; END IF
Main_main_476:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_475:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_474 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_479
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_479:
JPC R5, Main_main_474 ; Sprung zu END IF
; END IF
Main_main_474:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_481:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_480 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_482
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_482:
JPC R5, Main_main_480 ; Sprung zu END IF
; END IF
Main_main_480:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_437:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_436 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_483
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_483:
JPC R5, Main_main_436 ; Sprung zu END IF
; END IF
Main_main_436:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_491:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_490 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_492
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_492:
JPC R5, Main_main_490 ; Sprung zu END IF
; END IF
Main_main_490:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_489:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_488 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_493
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_493:
JPC R5, Main_main_488 ; Sprung zu END IF
; END IF
Main_main_488:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_495:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_494 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_496
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_496:
JPC R5, Main_main_494 ; Sprung zu END IF
; END IF
Main_main_494:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_487:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_486 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_497
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_497:
JPC R5, Main_main_486 ; Sprung zu END IF
; END IF
Main_main_486:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_501:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_500 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_502
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_502:
JPC R5, Main_main_500 ; Sprung zu END IF
; END IF
Main_main_500:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_499:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_498 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_503
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_503:
JPC R5, Main_main_498 ; Sprung zu END IF
; END IF
Main_main_498:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_505:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_504 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_506
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_506:
JPC R5, Main_main_504 ; Sprung zu END IF
; END IF
Main_main_504:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_485:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_484 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_507
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_507:
JPC R5, Main_main_484 ; Sprung zu END IF
; END IF
Main_main_484:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_513:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_512 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_514
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_514:
JPC R5, Main_main_512 ; Sprung zu END IF
; END IF
Main_main_512:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_511:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_510 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_515
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_515:
JPC R5, Main_main_510 ; Sprung zu END IF
; END IF
Main_main_510:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_517:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_516 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_518
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_518:
JPC R5, Main_main_516 ; Sprung zu END IF
; END IF
Main_main_516:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_509:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_508 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_519
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_519:
JPC R5, Main_main_508 ; Sprung zu END IF
; END IF
Main_main_508:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_523:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_522 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_524
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_524:
JPC R5, Main_main_522 ; Sprung zu END IF
; END IF
Main_main_522:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_521:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_520 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_525
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_525:
JPC R5, Main_main_520 ; Sprung zu END IF
; END IF
Main_main_520:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_527:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_526 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_528
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_528:
JPC R5, Main_main_526 ; Sprung zu END IF
; END IF
Main_main_526:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_435:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_434 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_529
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_529:
JPC R5, Main_main_434 ; Sprung zu END IF
; END IF
Main_main_434:
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_539:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_538 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_540
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_540:
JPC R5, Main_main_538 ; Sprung zu END IF
; END IF
Main_main_538:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_537:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_536 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_541
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_541:
JPC R5, Main_main_536 ; Sprung zu END IF
; END IF
Main_main_536:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_543:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_542 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_544
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_544:
JPC R5, Main_main_542 ; Sprung zu END IF
; END IF
Main_main_542:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_535:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_534 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_545
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_545:
JPC R5, Main_main_534 ; Sprung zu END IF
; END IF
Main_main_534:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_549:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_548 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_550
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_550:
JPC R5, Main_main_548 ; Sprung zu END IF
; END IF
Main_main_548:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_547:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_546 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_551
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_551:
JPC R5, Main_main_546 ; Sprung zu END IF
; END IF
Main_main_546:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_553:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_552 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_554
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_554:
JPC R5, Main_main_552 ; Sprung zu END IF
; END IF
Main_main_552:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_533:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_532 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_555
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_555:
JPC R5, Main_main_532 ; Sprung zu END IF
; END IF
Main_main_532:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_561:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_560 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_562
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_562:
JPC R5, Main_main_560 ; Sprung zu END IF
; END IF
Main_main_560:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_559:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_558 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_563
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_563:
JPC R5, Main_main_558 ; Sprung zu END IF
; END IF
Main_main_558:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_565:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_564 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_566
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_566:
JPC R5, Main_main_564 ; Sprung zu END IF
; END IF
Main_main_564:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_557:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_556 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_567
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_567:
JPC R5, Main_main_556 ; Sprung zu END IF
; END IF
Main_main_556:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_571:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_570 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_572
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_572:
JPC R5, Main_main_570 ; Sprung zu END IF
; END IF
Main_main_570:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_569:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_568 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_573
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_573:
JPC R5, Main_main_568 ; Sprung zu END IF
; END IF
Main_main_568:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_575:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_574 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_576
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_576:
JPC R5, Main_main_574 ; Sprung zu END IF
; END IF
Main_main_574:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_531:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_530 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_577
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_577:
JPC R5, Main_main_530 ; Sprung zu END IF
; END IF
Main_main_530:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_585:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_584 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_586
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_586:
JPC R5, Main_main_584 ; Sprung zu END IF
; END IF
Main_main_584:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_583:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_582 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_587
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_587:
JPC R5, Main_main_582 ; Sprung zu END IF
; END IF
Main_main_582:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_589:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_588 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_590
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_590:
JPC R5, Main_main_588 ; Sprung zu END IF
; END IF
Main_main_588:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_581:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_580 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_591
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_591:
JPC R5, Main_main_580 ; Sprung zu END IF
; END IF
Main_main_580:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_595:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_594 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_596
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_596:
JPC R5, Main_main_594 ; Sprung zu END IF
; END IF
Main_main_594:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_593:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_592 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_597
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_597:
JPC R5, Main_main_592 ; Sprung zu END IF
; END IF
Main_main_592:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_599:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_598 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_600
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_600:
JPC R5, Main_main_598 ; Sprung zu END IF
; END IF
Main_main_598:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_579:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_578 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_601
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_601:
JPC R5, Main_main_578 ; Sprung zu END IF
; END IF
Main_main_578:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_607:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_606 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_608
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_608:
JPC R5, Main_main_606 ; Sprung zu END IF
; END IF
Main_main_606:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_605:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_604 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_609
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_609:
JPC R5, Main_main_604 ; Sprung zu END IF
; END IF
Main_main_604:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_611:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_610 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_612
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_612:
JPC R5, Main_main_610 ; Sprung zu END IF
; END IF
Main_main_610:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_603:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_602 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_613
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_613:
JPC R5, Main_main_602 ; Sprung zu END IF
; END IF
Main_main_602:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_617:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_616 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_618
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_618:
JPC R5, Main_main_616 ; Sprung zu END IF
; END IF
Main_main_616:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_615:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_614 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_619
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_619:
JPC R5, Main_main_614 ; Sprung zu END IF
; END IF
Main_main_614:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_621:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_620 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_622
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_622:
JPC R5, Main_main_620 ; Sprung zu END IF
; END IF
Main_main_620:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_433:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_432 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_623
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_623:
JPC R5, Main_main_432 ; Sprung zu END IF
; END IF
Main_main_432:
; IF
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_635:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_634 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_636
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_636:
JPC R5, Main_main_634 ; Sprung zu END IF
; END IF
Main_main_634:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_633:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_632 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_637
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_637:
JPC R5, Main_main_632 ; Sprung zu END IF
; END IF
Main_main_632:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_639:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_638 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_640
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_640:
JPC R5, Main_main_638 ; Sprung zu END IF
; END IF
Main_main_638:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_631:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_630 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_641
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_641:
JPC R5, Main_main_630 ; Sprung zu END IF
; END IF
Main_main_630:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_645:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_644 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_646
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_646:
JPC R5, Main_main_644 ; Sprung zu END IF
; END IF
Main_main_644:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_643:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_642 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_647
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_647:
JPC R5, Main_main_642 ; Sprung zu END IF
; END IF
Main_main_642:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_649:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_648 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_650
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_650:
JPC R5, Main_main_648 ; Sprung zu END IF
; END IF
Main_main_648:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_629:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_628 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_651
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_651:
JPC R5, Main_main_628 ; Sprung zu END IF
; END IF
Main_main_628:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_657:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_656 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_658
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_658:
JPC R5, Main_main_656 ; Sprung zu END IF
; END IF
Main_main_656:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_655:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_654 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_659
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_659:
JPC R5, Main_main_654 ; Sprung zu END IF
; END IF
Main_main_654:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_661:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_660 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_662
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_662:
JPC R5, Main_main_660 ; Sprung zu END IF
; END IF
Main_main_660:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_653:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_652 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_663
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_663:
JPC R5, Main_main_652 ; Sprung zu END IF
; END IF
Main_main_652:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_667:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_666 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_668
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_668:
JPC R5, Main_main_666 ; Sprung zu END IF
; END IF
Main_main_666:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_665:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_664 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_669
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_669:
JPC R5, Main_main_664 ; Sprung zu END IF
; END IF
Main_main_664:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_671:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_670 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_672
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_672:
JPC R5, Main_main_670 ; Sprung zu END IF
; END IF
Main_main_670:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_627:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_626 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_673
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_673:
JPC R5, Main_main_626 ; Sprung zu END IF
; END IF
Main_main_626:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_681:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_680 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_682
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_682:
JPC R5, Main_main_680 ; Sprung zu END IF
; END IF
Main_main_680:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_679:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_678 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_683
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_683:
JPC R5, Main_main_678 ; Sprung zu END IF
; END IF
Main_main_678:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_685:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_684 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_686
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_686:
JPC R5, Main_main_684 ; Sprung zu END IF
; END IF
Main_main_684:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_677:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_676 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_687
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_687:
JPC R5, Main_main_676 ; Sprung zu END IF
; END IF
Main_main_676:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_691:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_690 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_692
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_692:
JPC R5, Main_main_690 ; Sprung zu END IF
; END IF
Main_main_690:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_689:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_688 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_693
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_693:
JPC R5, Main_main_688 ; Sprung zu END IF
; END IF
Main_main_688:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_695:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_694 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_696
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_696:
JPC R5, Main_main_694 ; Sprung zu END IF
; END IF
Main_main_694:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_675:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_674 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_697
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_697:
JPC R5, Main_main_674 ; Sprung zu END IF
; END IF
Main_main_674:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_703:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_702 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_704
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_704:
JPC R5, Main_main_702 ; Sprung zu END IF
; END IF
Main_main_702:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_701:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_700 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_705
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_705:
JPC R5, Main_main_700 ; Sprung zu END IF
; END IF
Main_main_700:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_707:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_706 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_708
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_708:
JPC R5, Main_main_706 ; Sprung zu END IF
; END IF
Main_main_706:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_699:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_698 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_709
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_709:
JPC R5, Main_main_698 ; Sprung zu END IF
; END IF
Main_main_698:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_713:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_712 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_714
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_714:
JPC R5, Main_main_712 ; Sprung zu END IF
; END IF
Main_main_712:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_711:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_710 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_715
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_715:
JPC R5, Main_main_710 ; Sprung zu END IF
; END IF
Main_main_710:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_717:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_716 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_718
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_718:
JPC R5, Main_main_716 ; Sprung zu END IF
; END IF
Main_main_716:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_625:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_624 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_719
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_719:
JPC R5, Main_main_624 ; Sprung zu END IF
; END IF
Main_main_624:
; IF
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_729:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_728 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_730
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_730:
JPC R5, Main_main_728 ; Sprung zu END IF
; END IF
Main_main_728:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_727:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_726 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_731
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_731:
JPC R5, Main_main_726 ; Sprung zu END IF
; END IF
Main_main_726:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_733:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_732 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_734
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_734:
JPC R5, Main_main_732 ; Sprung zu END IF
; END IF
Main_main_732:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_725:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_724 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_735
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_735:
JPC R5, Main_main_724 ; Sprung zu END IF
; END IF
Main_main_724:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_739:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_738 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_740
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_740:
JPC R5, Main_main_738 ; Sprung zu END IF
; END IF
Main_main_738:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_737:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_736 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_741
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_741:
JPC R5, Main_main_736 ; Sprung zu END IF
; END IF
Main_main_736:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_743:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_742 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_744
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_744:
JPC R5, Main_main_742 ; Sprung zu END IF
; END IF
Main_main_742:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_723:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_722 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_745
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_745:
JPC R5, Main_main_722 ; Sprung zu END IF
; END IF
Main_main_722:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_751:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_750 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_752
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_752:
JPC R5, Main_main_750 ; Sprung zu END IF
; END IF
Main_main_750:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_749:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_748 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_753
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_753:
JPC R5, Main_main_748 ; Sprung zu END IF
; END IF
Main_main_748:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_755:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_754 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_756
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_756:
JPC R5, Main_main_754 ; Sprung zu END IF
; END IF
Main_main_754:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_747:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_746 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_757
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_757:
JPC R5, Main_main_746 ; Sprung zu END IF
; END IF
Main_main_746:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_761:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_760 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_762
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_762:
JPC R5, Main_main_760 ; Sprung zu END IF
; END IF
Main_main_760:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_759:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_758 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_763
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_763:
JPC R5, Main_main_758 ; Sprung zu END IF
; END IF
Main_main_758:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_765:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_764 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_766
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_766:
JPC R5, Main_main_764 ; Sprung zu END IF
; END IF
Main_main_764:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_721:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_720 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_767
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_767:
JPC R5, Main_main_720 ; Sprung zu END IF
; END IF
Main_main_720:
; IF
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_775:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_774 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_776
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_776:
JPC R5, Main_main_774 ; Sprung zu END IF
; END IF
Main_main_774:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_773:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_772 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_777
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_777:
JPC R5, Main_main_772 ; Sprung zu END IF
; END IF
Main_main_772:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_779:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_778 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_780
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_780:
JPC R5, Main_main_778 ; Sprung zu END IF
; END IF
Main_main_778:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_771:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_770 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_781
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_781:
JPC R5, Main_main_770 ; Sprung zu END IF
; END IF
Main_main_770:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_785:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_784 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_786
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_786:
JPC R5, Main_main_784 ; Sprung zu END IF
; END IF
Main_main_784:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_783:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_782 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_787
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_787:
JPC R5, Main_main_782 ; Sprung zu END IF
; END IF
Main_main_782:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_789:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_788 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_790
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_790:
JPC R5, Main_main_788 ; Sprung zu END IF
; END IF
Main_main_788:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_769:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_768 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_791
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_791:
JPC R5, Main_main_768 ; Sprung zu END IF
; END IF
Main_main_768:
; IF
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_797:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_796 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_798
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_798:
JPC R5, Main_main_796 ; Sprung zu END IF
; END IF
Main_main_796:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_795:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_794 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_799
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_799:
JPC R5, Main_main_794 ; Sprung zu END IF
; END IF
Main_main_794:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_801:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_800 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_802
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_802:
JPC R5, Main_main_800 ; Sprung zu END IF
; END IF
Main_main_800:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_793:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_792 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_803
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_803:
JPC R5, Main_main_792 ; Sprung zu END IF
; END IF
Main_main_792:
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_807:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_806 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_808
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_808:
JPC R5, Main_main_806 ; Sprung zu END IF
; END IF
Main_main_806:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_805:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_804 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_809
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_809:
JPC R5, Main_main_804 ; Sprung zu END IF
; END IF
Main_main_804:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_811:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_810 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_812
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_812:
JPC R5, Main_main_810 ; Sprung zu END IF
; END IF
Main_main_810:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
MRI R5, Main_main_813
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von b
MRI R0, Main_b
Main_main_813:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; NEW Main
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Main
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 4
ADD R4, R5 ; Heap weiter zählen
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_815:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_814 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_816
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_816:
JPC R5, Main_main_814 ; Sprung zu END IF
; END IF
Main_main_814:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut a
MRM R5, (R2)
MRI R6, 3
ADD R5, R6
MMR (R2), R5
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 69 : _Integer
MRI R5, 69
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_818:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_817 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_819
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_819:
JPC R5, Main_main_817 ; Sprung zu END IF
; END IF
Main_main_817:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; IF
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_821:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_820 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_822
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_822:
JPC R5, Main_main_820 ; Sprung zu END IF
; END IF
Main_main_820:
; Referenz auf Variable _self
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; ASSIGNMENT
MRM R5, (R2) ; Rechten Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf linken Wert vom Stapel nehmen
SUB R2, R1
MMR (R6), R5 ; Zuweisen
; CALL
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_824:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_823 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_825
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_825:
JPC R5, Main_main_823 ; Sprung zu END IF
; END IF
Main_main_823:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
MRI R5, Main_main_826
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von b
MRI R0, Main_b
Main_main_826:
; CALL
; IF
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_830:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_829 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_831
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_831:
JPC R5, Main_main_829 ; Sprung zu END IF
; END IF
Main_main_829:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_828:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_827 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_832
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_832:
JPC R5, Main_main_827 ; Sprung zu END IF
; END IF
Main_main_827:
; IF
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Main_main_834:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Main_main_833 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Main_main_835
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Main_main_835:
JPC R5, Main_main_833 ; Sprung zu END IF
; END IF
Main_main_833:
; Referenz auf Variable b
MRI R5, 2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; Referenz auf Attribut c
MRM R5, (R2)
MRI R6, 2
ADD R5, R6
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
MRI R5, Main_main_836
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von b
MRI R0, Main_b
Main_main_836:
; END METHOD main
MRI R5, 5
SUB R2, R5 ; Stack korrigieren
SUB R3, R1
MRM R5, (R3) ; Rücksprungadresse holen
ADD R3, R1
MRM R3, (R3) ; Alten Stapelrahmen holen
MRR R0, R5 ; Rücksprung
; END CLASS Main
; CLASS Object
Object:
; END CLASS Object
; CLASS Integer
Integer:
; END CLASS Integer
; CLASS Boolean
Boolean:
; END CLASS Boolean
; CLASS Exception
Exception:
DAT 1, Exception_Print
; METHOD Print
Exception_Print:
ADD R2, R1
MMR (R2), R3 ; Alten Stapelrahmen sichern
MRR R3, R2 ; Aktuelle Stapelposition ist neuer Rahmen
; 69 : _Integer
MRI R5, 69
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 120 : _Integer
MRI R5, 120
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 99 : _Integer
MRI R5, 99
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 112 : _Integer
MRI R5, 112
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 116 : _Integer
MRI R5, 116
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 105 : _Integer
MRI R5, 105
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 111 : _Integer
MRI R5, 111
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 58 : _Integer
MRI R5, 58
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 32 : _Integer
MRI R5, 32
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; IF
; IF
; Referenz auf Parameter code
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Exception_Print_5:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Exception_Print_4 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Exception_Print_6
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Exception_Print_6:
JPC R5, Exception_Print_4 ; Sprung zu END IF
; END IF
Exception_Print_4:
; Referenz auf Parameter code
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; UNBOX
MRM R5, (R2) ; Objektreferenz vom Stapel lesen
MRI R6, 1
ADD R5, R6 ; Adresse des Werts bestimmen
MRM R5, (R5) ; Wert auslesen
MMR (R2), R5 ; und auf den Stapel schreiben
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Exception_Print_3:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Exception_Print_2 ; Sprung zu ELSE
; THEN
; 68 : _Integer
MRI R5, 68
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 105 : _Integer
MRI R5, 105
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 118 : _Integer
MRI R5, 118
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 105 : _Integer
MRI R5, 105
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 115 : _Integer
MRI R5, 115
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 105 : _Integer
MRI R5, 105
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 111 : _Integer
MRI R5, 111
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 32 : _Integer
MRI R5, 32
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 98 : _Integer
MRI R5, 98
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 121 : _Integer
MRI R5, 121
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 32 : _Integer
MRI R5, 32
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 90 : _Integer
MRI R5, 90
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 114 : _Integer
MRI R5, 114
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 111 : _Integer
MRI R5, 111
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
JPC R5, Exception_Print_1 ; Sprung zu END IF
Exception_Print_2:
; ELSEIF
; IF
; Referenz auf Parameter code
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; 0 : _Null
MRI R5, 0
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Exception_Print_10:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Exception_Print_9 ; Sprung zu END IF
; THEN
; CALL
; NEW Exception
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Exception
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; NEW Integer
ADD R2, R1
MMR (R2), R4 ; Referenz auf neues Objekt auf den Stapel legen
MRI R5, Integer
MMR (R4), R5
ADD R4, R1 ; Heap weiter zählen
MRI R5, 2
ADD R4, R5 ; Heap weiter zählen
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; BOX
MRM R5, (R2) ; Wert vom Stapel nehmen
SUB R2, R1
MRM R6, (R2) ; Referenz auf neues Objekt holen (bleibt auf Stapel)
MRI R7, 1
ADD R6, R7 ; Speicherstelle in neuem Objekt berechnen
MMR (R6), R5 ; Wert in Objekt speichern
MRI R5, Exception_Print_11
ADD R2, R1
MMR (R2), R5 ; Rücksprungadresse auf den Stapel
; Statischer Aufruf von Print
MRI R0, Exception_Print
Exception_Print_11:
JPC R5, Exception_Print_9 ; Sprung zu END IF
; END IF
Exception_Print_9:
; Referenz auf Parameter code
MRI R5, -2
ADD R5, R3
ADD R2, R1
MMR (R2), R5
; DEREF
MRM R5, (R2)
MRM R5, (R5)
MMR (R2), R5
; UNBOX
MRM R5, (R2) ; Objektreferenz vom Stapel lesen
MRI R6, 1
ADD R5, R6 ; Adresse des Werts bestimmen
MRM R5, (R5) ; Wert auslesen
MMR (R2), R5 ; und auf den Stapel schreiben
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; EQ
MRM R5, (R2)
SUB R2, R1
MRM R6, (R2)
SUB R6, R5
ISZ R6, R6
MMR (R2), R6
Exception_Print_8:
MRM R5, (R2) ; Bedingung vom Stapel nehmen
SUB R2, R1
ISZ R5, R5 ; Wenn 0, dann
JPC R5, Exception_Print_7 ; Sprung zu ELSE
; THEN
; 68 : _Integer
MRI R5, 68
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 82 : _Integer
MRI R5, 82
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 32 : _Integer
MRI R5, 32
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 111 : _Integer
MRI R5, 111
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 102 : _Integer
MRI R5, 102
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 32 : _Integer
MRI R5, 32
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 78 : _Integer
MRI R5, 78
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 85 : _Integer
MRI R5, 85
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 76 : _Integer
MRI R5, 76
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 76 : _Integer
MRI R5, 76
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 45 : _Integer
MRI R5, 45
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 118 : _Integer
MRI R5, 118
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 97 : _Integer
MRI R5, 97
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 108 : _Integer
MRI R5, 108
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 117 : _Integer
MRI R5, 117
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
JPC R5, Exception_Print_1 ; Sprung zu END IF
; ELSE
Exception_Print_7:
; 85 : _Integer
MRI R5, 85
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 107 : _Integer
MRI R5, 107
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 111 : _Integer
MRI R5, 111
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 119 : _Integer
MRI R5, 119
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 32 : _Integer
MRI R5, 32
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 82 : _Integer
MRI R5, 82
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 117 : _Integer
MRI R5, 117
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 116 : _Integer
MRI R5, 116
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 105 : _Integer
MRI R5, 105
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 109 : _Integer
MRI R5, 109
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 69 : _Integer
MRI R5, 69
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 120 : _Integer
MRI R5, 120
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 99 : _Integer
MRI R5, 99
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 101 : _Integer
MRI R5, 101
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 112 : _Integer
MRI R5, 112
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 116 : _Integer
MRI R5, 116
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 105 : _Integer
MRI R5, 105
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 111 : _Integer
MRI R5, 111
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; 110 : _Integer
MRI R5, 110
ADD R2, R1
MMR (R2), R5
; WRITE
MRM R5, (R2)
SUB R2, R1
SYS 1, 5
; END IF
Exception_Print_1:
; END METHOD Print
MRI R5, 4
SUB R2, R5 ; Stack korrigieren
SUB R3, R1
MRM R5, (R3) ; Rücksprungadresse holen
ADD R3, R1
MRM R3, (R3) ; Alten Stapelrahmen holen
MRR R0, R5 ; Rücksprung
; END CLASS Exception
_stack: ; Hier fängt der Stapel an
DAT 50, 0
_heap: ; Hier fängt der Heap an
DAT 100, 0
_end: ; Programmende
